  .pc = $0801 "Basic Upstart"
  :BasicUpstart($080d)
  .pc =$080d "Code"

  lda #$00
  sta $d020
  sta $d021

  lda #$01
  sta $0286
  jsr $e544

  lda #$18
  sta $d018

  // Turn off Interupt Requests
  sei
  // Switch in the Character ROM to $d000
  lda #$33
  sta $01
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
getit:
  lda text1
  cmp #$00
  beq finito
  sta $fa  // $fb:fa = Graphics Fetch Position)
  lda #$00
  asl $fa
  rol
  asl $fa
  rol
  asl $fa
  rol
  adc #$d8
  sta $fb
lo:
  lda #$00
  sta $fc
hi:
  lda #$10
  sta $fe
hii:
  lda #$20
  sta $fd
  sta $ff

  jsr GetAndPut
  lda lo+1
  clc
  adc #$20
  bne *+5
  inc hii+1

  sta lo+1
  clc
  adc #$10
  sta hi+1
  inc getit+1
  jmp getit
finito:

  ldy #$02
doit:
  ldx #$27
klo:
  lda #$9f
hey:
  sta $0478,x
  sbc #$01
hey2:
  sta $0450,x
  sbc #$01
  dex
  bpl hey
  lda #$4f
  sta klo+1
  lda #$28
  sta hey+1
  lda #$00
  sta hey2+1
  dey
  bne doit
  beq *
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
GetAndPut:
  ldy #$00
  // Fetch Bitmap
again:
  lda ($fa),y
  sta $02
  // Loop Counter (4 coz 1 bit gets expanded to 2 = 4 double bits in one byte!)
  ldx #$03
  lda #$00
loop1:
  asl $02
  bcc *+5
  ora tab,x
  dex
  bpl loop1
  sta ($fc),y  // $fd:fc = start adress ($2000)
  inc $fc
  sta ($fc),y  // $2001

  ldx #$03
  lda #$00
loop2:
  asl $02
  bcc *+5
  ora tab,x
  dex
  bpl loop2
  sta ($fe),y  // $ff:fe = lower start ($2010)
  inc $fe
  sta ($fe),y

  dec $fa
  dec $fc
  dec $fe
  iny
  iny
  cpy #$10
  bne again
  rts



tab:
  .byte %00000011, %00001100 ,%00110000, %11000000
text1:
  .text "CREATORS"
  .byte $40
  .text "Wish"
  .byte $40
  .text "You"
  .byte $40
  .text "a"
  .byte $40
text2:
  .text "Merry"
  .byte $40
  .text "X-Mas"
  .byte $40
  .text "(250B!!)"
  .byte $00